<?php
class ValidateAjax{
	protected $_errorMessage = array();
	protected $_isError = false;
	
	public function validateTitle($title){
		if(!isset($title) || empty($title)){
			$this->_isError = true;
			$this->_errorMessage['errors']['txtTitle'] = 'Tiêu đề không được để trống!';
		}else{
			if(mb_strlen($_POST['txtTitle'], 'UTF-8') < 2 || mb_strlen($_POST['txtTitle'], 'UTF-8') > 150){
				$this->_isError = true;
				$this->_errorMessage['errors']['txtTitle'] = 'Chiều dài tiêu đề phải lớn hơn 10 và bé hơn 150 kí tự!';
			}
		}
	}
	
	public function validateDescription($description){
		if(!isset($description) || empty($description)){
			$this->_isError = true;
			$this->_errorMessage['errors']['txtDescription'] = 'Mô tả không được để trống!';
		}else{
			if(mb_strlen($_POST['txtDescription'], 'UTF-8') < 2 || mb_strlen($_POST['txtDescription'], 'UTF-8') > 150){
				$this->_isError = true;
				$this->_errorMessage['errors']['txtDescription'] = 'Chiều dài mô tả phải lớn hơn 10 và bé hơn 150 kí tự!';
			}
		}
	}
	
	public function validateAlbum($album){
		
	}
	
	public function validateCategory($cat){
		
	}
	
	public function validateFiles($files){
		if(!isset($files) || empty($files)){
			$this->_isError = true;
			$this->_errorMessage['errors']['uploadedFile'] = 'Bạn phải upload hình trước khi đăng bài viết!';
		}else{
			$ch = curl_init();
			foreach($files as $file){
				$tmpArray = explode('_', $file);
				$folder = $tmpArray[0] . '/' . $tmpArray[1] . '/' . $tmpArray[2] . '/';
				$agent = 'User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.15) Gecko/20080623 Firefox/2.0.0.15';
				$url = 'http://localhost/test/jqueryupload/images/image/original/' . $folder . $file;
				$url = str_replace(" ", '%20', $url);

				curl_setopt($ch, CURLOPT_USERAGENT, $agent);
				curl_setopt($ch, CURLOPT_FAILONERROR, 1);
				curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
				curl_setopt($ch, CURLOPT_URL, $url);
				curl_setopt($ch, CURLOPT_NOBODY, true);
				$result = curl_exec($ch);


				if($result !== false){
					$statusCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
					if($statusCode != 200){
						$this->_isError = true;
						$this->_errorMessage['errors']['uploadedFile'] = 'Bạn phải upload hình trước khi đăng bài viết!';
						break;
					}
				}

			}

		}
	}
	
	public function getErrorMessages(){
		return $this->_errorMessage;
	}
	
	public function isError(){
		return $this->_isError;
	}
}